Decoder and method of decoding block codes

ABSTRACT

A decoder for decoding an encoded word X having N bits as an encoded signal to thereby have an ex-code word Y having M bits as a signal before encoded, includes (a) a correlation matrix computation part which makes computation of the encoded word X with a correlation matrix W defined by N rows and M columns, to output computation result having M columns, (b) a judgment part which judges each component in the computation result, and (c) an ex-code word output part which outputs a result of judgment carried out the judgment part, as the ex-code word Y.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a decoder and a decoding method,and more particularly to a decoder and a decoding method both of whichdecode a block code as an error correction code.

[0003] 2. Description of the Related Art

[0004] A conventional method for decoding a block code as an errorcorrection code is generally comprised of steps of calculating asyndrome from a received coded word, acquiring an erroneous positionpolynomial from the syndrome, and acquiring an erroneous position of thereceived coded word by solving the erroneous position polynomial,thereby carrying out an error correction.

[0005] For instance, Japanese Unexamined Patent Publications Nos.10-229342 and 6-276106 suggest a method of correcting an error generatedin a transmission path by reversing a bit located in an erroneousposition, if such an erroneous position can be found.

[0006] As an alternative, as suggested in Japanese Unexamined PatentPublications Nos. 10-256919 and 10-13251, an erroneous position may beidentified by defining a conversion table from a syndrome, instead ofsolving the erroneous position polynomial.

[0007] Japanese Unexamined Patent Publication No. 1-240032 has suggesteda system of encoding a KL conversion coefficient obtained byKL-converting a vectorial input signal, including first means ofdetermining an auto-correlation coefficient of the input signal, amatrix code book used for KL conversion and defined by inherent vectorsof an auto-correlation mad which is predetermined based on traininginput signals, an inherent value table associated with the code book, anauto-correlation coefficient table and a table for optimallydistributing bits, second means for calculating deformation of arepresentative vector, based on the auto-correlation coefficient, arepresentative vector of the matrix code book, the inherent value table,and the auto-correlation coefficient table, retrieving an optimalrepresentative vector to minimize the deformation, third means forconducting KL conversion to the input signal in accordance with theoptimal representative vector, fourth means for encoding a conversioncoefficient obtained by conversion conducted by the third means, andfifth means for encoding the number of the optimal representativevector.

[0008] Japanese Unexamined Patent Publication No. 9-306102 has suggesteda digital signal decoder including an equalizer of equalizing areproduced signal obtained by digitizing an input analog signalindicative of encoded binary data, in accordance with a partial responseprocess, and a decoder which decodes the thus equalized reproducedsignal. The equalizer is comprised of an input layer, an output layer,and at least one intermediate layer sandwiched between the input andoutput layers, and makes non-linear equalization. The intermediate layeris comprised of a plurality of calculators. At least a part ofparameters to be determined for at least one of the input layer, theoutput layer and the intermediate layer is set at a fixed value.

[0009] Japanese Unexamined Patent Publication No. 11-126096 hassuggested a voice encoding and decoding apparatus including (a) a filterhaving a filter coefficient obtained by analyzing and quantizing anadaptive vector indicative of a pitch, a noise vector indicative ofnoises, and input voice signals, and (b) a distortion calculator whichcalculates distortion in both the input voice signal and synthesizedvoice signal obtained by driving the filter, and identifies one adaptivevector and one noise vector which minimize the distortion The distortioncalculator is designed to have functions of (a) defining a matrix N bycalculating both power of a signal generated by synthesizing theadaptive vectors in the filter, and an auto-correlation matrix of afilter coefficient of the filter, and multiplying each components of theauto-correlation, matrix with the power, (b) defining a matrix M bysynthesizing signals generated by synthesizing the adaptive vectors inthe filter, in time inverse order, and calculating an outer product ofthe thus synthesized signals, (c) subtracting the matrix M from thematrix N to define a matrix L, and (d) calculating the distortion basedon the matrix L.

[0010] However, the above-mentioned conventional methods are accompaniedwith a problem that since a syndrome or a solution of an erroneousposition polynomial cannot be instantaneously calculated from a receivedcoded word, it is necessary to delay the received coded word by a timenecessary for calculating the erroneous position, and as a result, adelay occurs in decoding a block code.

[0011] Furthermore, in accordance with the above-mentioned conventionalmethod for acquiring an erroneous position through use of a conversiontable made from a syndrome, instead of solving the erroneous positionpolynomial, it is not necessary to solve an erroneous positionpolynomial, but the conversion table in correspondence to all ofreceived coded words is necessary to prepare. For instance, since aReed-Solomon code in ETSI standards has a coding ratio (204, 188), apotential combination of received coded words exists by the (8×204)-thpower of 2 (2^(8×204)). Thus, the conventional method is accompaniedwith a problem that the conversion table to be made by hardware/softwareis unrealizable.

SUMMARY OF THE INVENTION

[0012] In view of the above-mentioned problems in the conventionalmethods, it is an object of the present invention to provide a decoderand a decoding method both of which are capable of obtaining an ex-codedword without calculating a syndrome and solving an erroneous positionpolynomial, and minimizing a decoding delay.

[0013] Furthermore, it is another object of the present invention toprovide an apparatus for learning a correlation matrix and a method ofdoing the same, both of which are capable of providing a correlationmatrix which can be applied to any polynomial for encoding a word, inorder to have a correlation matrix by learning block-encoded words andex-code words.

[0014] In one aspect of the present invention, a decoder for decoding anencoded word X having N bits as an encoded signal to thereby have anex-code word Y having M bits as a signal before encoded, includes (a) acorrelation matrix computation part which makes computation of theencoded word X with a correlation matrix W defined by N rows and Mcolumns, to output computation result having M columns, (b) a judgmentpart which judges each component in the computation result, and (c) anex-code word output part which outputs a result of judgment carried outthe judgment part, as the ex-code word Y.

[0015] It is preferable that the correlation matrix computation partcomputes a product of the encoded word X and the correlation matrix W.

[0016] It is preferable that the correlation matrix computation part iscomprised of (a1) a memory which stores the correlation matrix Wtherein, and (a2) a calculator which calculates a product of the encodedword X and the correlation matrix W.

[0017] It is preferable that the judgment part transmits a signal of “1”if the component is positive or zero, and transmits a signal of “0” ifthe component is negative.

[0018] It is preferable that the correlation matrix W is defined suchthat the component is equal to or greater than a predetermined positivethreshold, if a component of the ex-code word Y is 1, and the componentis equal to or smaller than a predetermined negative threshold, if acomponent of the ex-code word Y is 0.

[0019] For instance, the encoded word X may be comprised of symbols. Forinstance, the encoded word X is comprised of Reed-Solomon codes.

[0020] In another aspect of the present invention, there is provided anapparatus for determining a correlation matrix W used in the decoderdefined in claim 1, including (a) a correlation matrix calculation partwhich makes calculation of the encoded word X with the correlationmatrix W to output calculation result, and (b) a device which comparesthe calculation result to the ex-code word Y in each component, andupdates the correlation matrix W₁ based on a result of comparison.

[0021] It is preferable that the device updates each component of thecorrelation matrix W such that each component of the calculation resultis equal to or greater than a predetermined positive threshold, if theex-code word Y has a component of 1 and each component of thecalculation result is smaller than a predetermined negative threshold,if the ex-code word Y has a component of 0.

[0022] It is preferable that the device updates each component of thecorrelation matrix W by □W smaller than the predetermined positivethreshold.

[0023] In still another aspect of the present invention, there isprovided a method of decoding an encoded word X having N bits as anencoded signal to thereby have an ex-code word Y having M bits as asignal before encoded, including the steps of (a) making computation ofthe encoded word X with a correlation matrix W defined by N rows and Mcolumns, to output computation result having M columns, (b) judging eachcomponent in the computation result, and (c) outputting a result ofjudgment carried out in the step (b), as the ex-code word Y.

[0024] It is preferable that a product of the encoded word X and thecorrelation matrix W is computed in the step (a).

[0025] It is preferable that a signal of “1” is transmitted, if thecomponent is positive or zero, and a signal of “0” is transmitted, ifthe component is negative, in step (b).

[0026] It is preferable that the correlation matrix W used in the step(a) is defined such that the component is equal to or greater than apredetermined positive threshold, if a component of the ex-code word Yis 1, and the component is equal to or smaller than a predeterminednegative threshold, if a component of ex-code word Y is 0.

[0027] There is further provided a method of determining a correlationmatrix used in the method defined in claim 11, including the steps of(a) making calculation of the encoded word X with the correlation matrixW to output calculation result, (b) comparing the calculation result tothe ex-code word Y in each component, and (c) updating the correlationmatrix W based on a result of comparison carried out in the step (b),

[0028] It is preferable that each component of the correlation matrix Wis updated in the step (c) such that each component of the calculationresult is equal to or greater than a predetermined positive threshold,if the ex-code word Y has a component of 1, and each component of thecalculation result is smaller than a predetermined negative threshold,if the ex-code word Y has a component of 0.

[0029] It is preferable that each component of the correlation matrix Wis updated in the step (c) by □W smaller than the predetermined positivethreshold.

[0030] In yet another aspect of the present invention, there is provideda recording medium readable by a computer, storing a program therein forcausing a computer to act as the above-mentioned decoder.

[0031] There is further provided a recording medium readable by acomputer, storing a program therein for causing a computer to act as theabove-mentioned apparatus.

[0032] There is still further provided a recording medium readable by acomputer, storing a program therein for causing a computer to carry outthe above-mentioned method of decoding an encoded word X having N bitsas an encoded signal to thereby have an ex-code word Y having M bits asa signal before encoded.

[0033] There is yet further provided a recording medium readable by acomputer, storing a program therein for causing a computer to carry outthe above-mentioned method of determining a correlation matrix W used inthe method of decoding an encoded word X having N bits as an encodedsignal to thereby have an ex-code word Y having M bits as a signalbefore encoded.

[0034] There is further provided a decoder for decoding an encoded wordX having N bits as an encoded signal to thereby have an ex-code word Yhaving M bits as a signal before encoded, including (a) a correlationmatrix computation part which makes computation of the encoded word Xwith a correlation matrix W defined by N rows and M columns, to outputcomputation result having M columns, (b) a judgment part which judgeseach component in the computation result, (c) an ex-code word outputpart which outputs a result of judgment carried out the judgment part,as the ex-code word Y, and (d) a device for determining the correlationmatrix W, the device including (d1) a correlation matrix calculationpart which makes calculation of the encoded word X with the correlationmatrix W to output calculation result, and (d2) a device which comparesthe calculation result to the ex-code word Y in each component, andupdates the correlation matrix W, based on a result of comparison.

[0035] There is further provided a method of decoding an encoded word Xhaving N bits as an encoded signal to thereby have an ex-code word Yhaving M bits as a signal before encoded, including the steps of (a)determining a correlation matrix W, (b) making computation of theencoded word X with the correlation matrix W defined by N rows and Mcolumns, to output computation result having M columns, (c) judging eachcomponent in the computation result, and (d) outputting a result ofjudgment carried out in the step (b), as the ex-code word Y, the step(a) including the steps of (a1) making calculation of the encoded word Xwith the correlation matrix W to output calculation result, (a2)comparing the calculation result to the ex-code word Y in eachcomponent, and (a3) updating the correlation matrix W, based on a resultof comparison carried out in the step (a2).

[0036] The advantages obtained by the aforementioned present inventionwill be described hereinbelow.

[0037] In accordance with the present invention, matrix computation ofthe correlation matrix W and the block-encoded word X is carried outthrough the use of the correlation matrix W defined by the block-encodedwords X and the ex-codes Y without carrying out computation of asyndrome and solution of an erroneous position polynomial, and each bitin the computation result “y” is judged whether it is “1” or “0”,thereby the ex-code word Y can be obtained. The embodiment provides anadvantage that signal delay is minimized.

[0038] In addition, the present invention further provides an advantagethat since the correlation matrix W is learnt for updating, based on theblock-encoded words X and ex-code words Y, the resulting correlationmatrix W can correspond to any polynomnial for encoding.

[0039] The above and other objects and advantageous features of thepresent invention will be made apparent from the following descriptionmade with reference to the accompanying drawings, in which likereference characters designate the same or similar parts throughout thedrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0040]FIG. 1 is a block diagram illustrating a configuration of adecoder in accordance with an embodiment of the present invention.

[0041]FIG. 2 is a block diagram illustrating a configuration of anapparatus for learning a correlation matrix, in accordance with anembodiment of the present invention.

[0042]FIG. 3 is a diagram showing the range of input values to be inputinto a judgement part constituting the decoder illustrated in FIG. 1 inthe case of no bit errors in a transmission path.

[0043]FIG. 4 is a diagram showing a relation between input and output ina judgement part constituting the decoder illustrated in FIG. 1.

[0044]FIG. 5 is a diagram showing a rule for learning a correlationmatrix W in a comparison part constituting the apparatus illustrated inFIG. 2.

[0045]FIG. 6 is a block diagram showing a configuration of an encoderand decoder in accordance with an embodiment of the present invention.

[0046]FIG. 7 illustrates examples of recording mediums in which aprogram for carrying out a method of decoding a block code is to bestored

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0047] Preferred embodiments in accordance with the present inventionwill be explained hereinbelow with reference to drawings.

[0048]FIG. 1 is a block diagram illustrating a configuration of adecoder in accordance with an embodiment of the present invention, andFIG. 2 is a block diagram illustrating a configuration of an apparatusfor learning a correlation matrix, in accordance with an embodiment ofthe present invention.

[0049] A decoder 100 in accordance with the embodiment is comprised of acoded word input part 1 for inputting an N-bit coded word X which isencoded into a BCH code as a block code having an encoding ratio (N. M,a correlation matrix computation part 2 which computes a product of thecoded word X input into the coded word input part 1 and a correlationmatrix W defined by N rows and M columns, and outputs a computationresult “y” having M columns, a judgment part 3 including M judgmentcircuits for judging each component of the computation result “y” havingM columns, transmitted from the correlation matrix computation part 2,and an ex-code word output part 4 for outputting a result of thejudgment carried out by the enumeration part 3 as a M-bit ex-code word Y

[0050] Herein, an ex-code word indicates a word before encoded.

[0051] The correlation matrix computation part 2 is comprised of acorrelation matrix storage part 21 for storing the correlation matrix Wdefined by N rows and M columns, and a correlation matrix calculationpart 22 for calculating a product of the coded word X and thecorrelation matrix W.

[0052] An apparatus 200 for learning a correlation matrix, in accordancewith the embodiment of the present invention, is comprised of an ex-codeword input part 5 for inputting a M-bit ex-code word Y, a coded wordinput part 1 for inputting a N-bit coded word X which is encoded into aBCH code having an encoding ratio (N, M), a correlation matrixcomputation part 2 which computes a product of the coded word X inputinto the coded word input part 1 and a correlation matrix W defined by Nrows and M columns, and outputs a computation result “y” having Mcolumns, and a comparison part 6 including M comparison circuits 6-1 to6-m each comparing the computation result “y” to the ex-code word Y, andupdates the correlation matrix W stored in the correlation matrixstorage part 21 of the correlation matrix computation part 2, based onthe results of comparison conducted by the comparison circuits 6-1 to6-m.

[0053] The M-bit ex-code word Y input into the ex-code word input part 5is encoded into the N-bit coded word X by an encoder 7, and the N-bitcoded word X is input into the coded word input part 1.

[0054] Hereinbelow, an operation of the embodiment will be explained indetail with reference to FIGS. 3 to 6.

[0055] First, hereinbelow is explained how a coded word is encoded intoa BCH code as a block code having an encoding ratio N, M), withreference to FIGS. 3 and 4.

[0056]FIG. 3 is a diagram showing the range of input values to be inputinto the judgment part 3 constituting the decoder 100 illustrated inFIG. 1 in the case of no bit errors in a transmission path, and FIG. 4is a diagram showing a relation between input and output in the judgmentpart 3.

[0057] A N-bit coded word X which was BCH-encoded is input into thecoded word input part 1, and then, the correlation matrix computationpart 2 computes a product of the coded word X and the correlation matrixW defined by N rows and M columns.

[0058] Specifically, the received N-bit coded word X is represented bythe following matrix.

X=[X _(n) X _(n−1) X _(n−2) . . . X ₂ X ₁].

[0059] The correlation matrix W defined by N rows and M columns isrepresented as follows. $\begin{matrix}{W = \quad \left\lbrack {W_{m}W_{m - 1}W_{{m - 2}\quad}\ldots \quad W_{2}W_{1}} \right\rbrack} \\{W_{m} = \quad {\left\lbrack {W_{n,m}W_{{n - 1},m}W_{{n \cdot 2},m}\quad \ldots \quad W_{2,m}W_{1,m}} \right\rbrack T}} \\{W_{m - 1} = \quad {\left\lbrack {W_{n,{m - 1}}W_{{n - 1},{m - 1}}W_{{n \cdot z},{m \cdot 1}}\quad \ldots \quad W_{2,{m \cdot 1}}W_{1,{m \cdot 1}}} \right\rbrack T}} \\{W_{m - 2} = \quad {\left\lbrack {W_{n,{m - 2}}W_{{n - 1},{m - 2}}W_{{n - 2},{m - 2}}\quad \ldots \quad W_{2,{m - 2}}W_{1,{m - 2}}} \right\rbrack T}} \\{\vdots \quad} \\{W_{2} = \quad {\left\lbrack {W_{n,2}W_{{n \cdot 1},2}W_{{{n \cdot 2},2}\quad}\quad \ldots \quad W_{2,2}W_{1,2}} \right\rbrack T}} \\{W_{1} = \quad {\left\lbrack {W_{n,1}W_{{n \cdot 1},1}W_{{n \cdot 2},1}\quad \ldots \quad W_{2,1}W_{1,1}} \right\rbrack T}}\end{matrix}$

[0060] Then, a product of the coded word X and the correlation mat Wdefined by N rows and M columns is computed.

[0061] When the coded word X is represented by “1” and “0,” a product iscomputed with “0” being deemed as “−1”.

[0062] Herein, the correlation matrix W is a matrix indicating acorrelation between the N-bit coded word X which was BCH-encoded and theM-bit ex-code word Y. The correlation matrix W is defined such that aninput value to be input into the judgment part a is selected to be “+TH”or greater, if a component or bit of the M-bit ex-code word Y is “1”,and an input value to be input into the judgment part 3 is selected tobe “−TH” or smaller, if a component or bit of the M-bit ex-code word Yis “0”.

[0063] Herein, since a value of “±TH” indicates a resistance to noisemargin, a greater “±TH” is more preferable.

[0064] A product of the N-bit coded word X and the correlation matrix W,in other words, the result “y” of computation carried out by thecorrelation matrix computation part 2 is represented as follows.$\begin{matrix}{y = {X \times W}} \\{= \left\lbrack {y_{m}y_{m \cdot 1}y_{m \cdot 2}\quad \ldots \quad y_{2}y_{1}} \right\rbrack} \\{y_{m} = {\left\lbrack {X_{n}X_{n - 1}X_{n - 2}\quad \ldots \quad X_{2}X_{1}} \right\rbrack \times W_{m}}} \\{{y_{m - 1} = {\left\lbrack {X_{n}X_{n - 1}X_{n - 2}\quad \ldots \quad X_{2}X_{1}} \right\rbrack \times W_{m - 1}}}\begin{matrix}{y_{m \cdot 2} = \quad {\left\lbrack {X_{n}X_{n - 1}X_{n - 2}\quad \ldots \quad X_{2}X_{1}} \right\rbrack \times W_{m - 2}}} \\{\vdots \quad} \\{y_{n} = \quad {\left\lbrack {X_{n}X_{n - 1}X_{n - 2}\quad \ldots \quad X_{2}X_{1}} \right\rbrack \times W_{2}}} \\{y_{1} = \quad {\left\lbrack {X_{n}X_{n - 1}X_{n - 2}\quad \ldots \quad X_{2}X_{1}} \right\rbrack \times W_{1}}}\end{matrix}}\end{matrix}$

[0065] Since the coded word X is comprised of N columns and thecorrelation matrix W is comprised of N rows and M columns, the computingresult “y” is comprised of M columns, and each bit of the result “y” isinput into the judgment part 3 comprised of M judgment circuit.

[0066] The M judgment circuits constituting the judgment part 3 judgeseach component of the computing result “y” comprised of M columns. Whenan input value is “0” or greater, the judgment circuit in the judgmentpart 3 outputs “1” as a judgment result, and when an input value is lessthan “0, ” the judgment part 3 outputs “0” as a judgment result.

[0067] The ex-code word output part 4 receives the judgment result fromthe judgment part 3, and outputs the judgment result as the M-bitex-code word Y, that is, a word before encoded.

[0068] Specifically, the ex-code word Y to be output from the judgmentpart 3 based on the computing result “y” transmitted from thecorrelation matrix computation part 2 is represented as follows.

Y=[Y _(m) Y _(m−1) Y _(m−2) . . . Y ₂ Y ₁]

Y _(m)=1(y _(m)≧0) or 0(y _(m)<0).

[0069] That is, as shown in FIG. 4, when an input value of “0” orgreater is input into the judgment part 3, the judgment circuitconstituting the judgment part 3 outputs “1,” and when an input value ofsmaller than “0” is input into the judgment part 3, the judgment circuitoutputs “0”. An M-bit output transmitted from the judgment part 3constitutes the ex-code word Y.

[0070] When no bit errors occur in a transmission path, the judgmentpart 3 receives an input value which is equal to or greater than “+TH”,or equal to or smaller than “−TH” in all bits of the M bits, as shown inFIG. 3. Hence, the judgment part 3 transmits an M-bit code as an ex-codeword in dependence on the I/O relation shown in FIG. 4.

[0071] On the other hand, when a bit error occurs in a transmissionpath, the judgment part 3 may not receive an input value which is equalto or greater than “+TH”, or equal to or smaller than “−TH”. However,since the judgment part 3 judges an output bit, based on whether aninput value is equal to or greater than “0”, or smaller than “0,” asshown in the I/O relation illustrated in FIG. 4, it is possible toobtain the ex-code correctly.

[0072] A method of determining the correlation matrix W will beexplained hereinbelow with reference to FIG. 5.

[0073] The correlation matrix W is determined in accordance with apredetermined learning rule which has been predetermined based on theresult “y” of computation between the coded word X and the correlationmatrix W wherein the ex-code word Y acts as a desirable signal.

[0074]FIG. 5 is a diagram showing the learning rule of the correlationmatrix W, in accordance with which the comparison part 6 of theapparatus 200 illustrated in FIG. 2 operates.

[0075] First, an M-bit ex-code word Y is input into the ex-code wordinput part 5. The encoder 7 encodes the ex-code word Y input into theex-code word input part 5, to a BCH code or a block code having anencoding ratio (N, M), and inputs the thus encoded N-bit coded word Xinto the coded word input part 1.

[0076] The correlation matrix computation part 2 computes a product ofthe coded word X and the correlation matrix W defined by N rows and Mcolumns, and outputs the computation result “y” to the comparison part6.

[0077] The comparison part 6 sets a threshold for each bit of theex-code word Y having been input into the ex-code word input part 5, andcompares the computing result “y” transmitted from the correlationmatrix computation part 2, with the thus set threshold.

[0078] The comparison part 6 sets “+TH” as a threshold when each bit ofthe ex-code word Y is “1”, and sets “−TH” as a threshold when each bitof the ex-code word Y is “0”.

[0079] Even when a bit of the ex-code word Y is “1” the correlationmatrix W is not updated, if the comparison part 6 receives an inputequal to or greater than “+TH”. In contrast, if the comparison part 6receives an input smaller than “+TH”, the correlation matrix W isupdated only by “±ΔW”.

[0080] Even when a bit of the ex-code word Y is “0,” the correlationmatrix W is not updated, if the comparison part 6 receives an inputequal to or smaller than “−TH”. In contrast, if the comparison part 6receives an input greater than “−TH”, the correlation matrix W isupdated only by “±ΔW”.

[0081] Since the value of “±ΔW” is one for gradually updating thecorrelation matrix W, it is preferable that the value of “±ΔW” issufficiently smaller than “±TH”.

[0082] Specifically, when a bit Ym of the ex-code word Y is “1, ” athreshold “+TH” is set in the comparison circuit 6-m, and when thecomparison circuit 6-m receives an input y_(m) equal to or greater than“+TH”, the correlation matrix W is not updated.

[0083] However, when y_(m) is smaller than “+TH”, the correlation matrixWm is updated as follows. $\begin{matrix}{W_{n,m} = \quad {W_{n,m} + {{{Sgn}\left( X_{n} \right)} \times \Delta \quad W}}} \\{W_{{n - 1},m} = \quad {W_{{n - 1},m} + {{{Sgn}\left( X_{n - 1} \right)} \times \Delta \quad W}}} \\{W_{l,m} = \quad {W_{l,m} + {{{Sgn}\left( X_{1} \right)} \times \Delta \quad W}}}\end{matrix}$

[0084] On the other hand, when a bit Ym of the ex-code word Y is “0,” athreshold “−TH” is set in the comparison circuit 6-m, and when thecomparison circuit 6-m receives an input y_(m) equal to or smaller than“−TH”, the correlation matrix W is not updated.

[0085] However, when the comparison circuit 6-m receives an input y_(m)greater than “−TH”, the correlation matrix Wm is updated as follows:$\begin{matrix}{W_{n,m} = \quad {W_{n,m} + {{{Sgn}\left( X_{n} \right)} \times \Delta \quad W}}} \\{W_{{n - 1},m} = \quad {W_{{n - 1},m} + {{{Sgn}\left( X_{n - 1} \right)} \times \Delta \quad W}}} \\{\vdots \quad} \\{W_{l,m} = \quad {W_{l,m} + {{{Sgn}\left( X_{1} \right)} \times \Delta \quad W}}}\end{matrix}$

[0086] If each component [X_(n)X_(n−1)X_(n−2) . . . X₂X₁] of the codedword X which has been block-encoded is represented by binary codes of“1” and “0”, the computation is carried out with “0” being deemed as“−1.” In the above-mentioned equations, Sgn(Xn) denotes a sign of thecoded word Xn, that is, plus (+) or minus (−).

[0087] The learning rule of the correlation matrix W is repeated aplurality of times for all the coded words X, thereby there is obtainedthe correlation matrix W in accordance with which an input into thejudgment part 3 meets the relation shown in FIG. 3, for all the codedwords X.

[0088] On the other hand, depending on the threshold “+TH” set in thecomparison part 6, even if the learning rule of the correlation matrix Wis repeated for all the coded words X, all the coded words X do notalways meet the relation shown in FIG. 3. In such a case, thecorrelation matrix W may be obtained by conducting the learning only bya certain number of times The correlation matrix W obtained byconducting the learning only by a certain number of times does notsatisfy the relation shown in FIG. 3 for all the coded words X. However,since the coded words X are decoded W accordance with the I/O relationshown in FIG. 4, the correct ex-code word Y can be obtained.

[0089] Hereinbelow is explained the second embodiment in accordance withthe present invention. The decoder 100 and the apparatus 200 in thesecond embodiment have the sauce structures as those in the firstembodiment. The second embodiment is different from the first embodimentin that a coded word is comprised of symbols like a Reed-Solomon code.

[0090] When a coded word is comprised of a Reed-Solomon code which hasan encoding ratio (N, M) and in which one symbol is comprised of k bits,1 bit of the BCH-coded word X in the above-mentioned embodiment isextended to a symbol comprised of k bits, and then, the coded word X isdecoded.

[0091] That is, replacement is made as follows.

[0092] The coded word X comprised of N symbols having N bits is replacedwith a coded word comprised of N symbols having (N×k) bits. Thecorrelation matrix W defined by N rows and M columns is replaced with acorrelation matrix defined by (N×k) rows and M×k) columns. The ex-codeword Y obtained by decoding, having M bits is replaced with an ex-codeword having (M×k) bits (M symbols).

[0093] Then, the decoding is carried out in the same manner as the firstembodiment to thereby obtain the ex-code word Y.

[0094] In a process of learning the correlation matrix W, a Reed-Solomonencoder is used as the encoder 7 illustrated in FIG. 2.

[0095] The correlation matrix W may be obtained before carrying out adecoding operation, or otherwise, learning the correlation matrix may becontinued while a decoding operation is being conducted.

[0096]FIG. 6 illustrates a system embodying the latter case. This systemsimultaneously carries out encoding and decoding.

[0097] The system is comprised of an encoder 7, an apparatus 200 forlearning a correlation matrix, and a decoder 100. The encoder 7 receivesam input Y and transmits an output X. The input Y and the output X arealso input into the apparatus 200. The apparatus 200 transmits acorrelation matrix W to the decoder 100.

[0098] In operation, while the encoder 7 is encoding an ex-code Y into ablock code, the apparatus 200 learns the correlation matrix W, and thedecoder 100 decodes the coded words X in accordance with the correlationmatrix W having been transmitted from the apparatus 200. Accordingly,since the system illustrated in FIG. 6, which simultaneously effectsencoding and decoding, always learns the correlation matrix W, even if apolynomial used for encoding is changed during signal transmission, thecorrelation matrix W becomes optimal. Hence, it is possible to carry outdecode the coded words X without modifying a structure of the decoder100.

[0099] As having been described so far, in accordance with theembodiment, matrix computation of the correlation matrix W and theblock-encoded word X is carried out through the use of the correlationmatrix W defined by the block-encoded words X and the ex-codes Y withoutcarrying out computation of a syndrome and solution of an erroneousposition polynomial, and each bit in the computation result “y” isjudged whether it is “1” or “0”, thereby the ex-code word Y can beobtained. The embodiment provides an advantage that signal delay isminimized.

[0100] The embodiment further provides an advantage that since thecorrelation matrix W is learnt for updating, based on the block-encodedwords X and ex-code words Y, the resulting correlation matrix W cancorrespond to any polynomial for encoding.

[0101] An operation of the decoder 100 and the apparatus 200 may beaccomplished as a program including various commands, and be presentedthrough a recording medium readable by a computer.

[0102] In the specification, the term “recording medium” means anymedium which can record data therein. Examples of a recording medium areillustrated in FIG. 7.

[0103] The term “recording medium” includes, for instance, a disk-shapedrecorder 401 such as CD-ROM (Compact Disk-ROM) or PD, a magnetic tape,MO (Magneto Optical Disk), DVD-ROM (Digital Video Disk-Read OnlyMemory), DVD-RAM Digital Video Disk-Random Access Memory), a floppy disk402, a memory chip 404 such as RAM (Random Access Memory) or ROM (ReadOnly Memory), EPROM (Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read Only Memory), smart media(Registered Trade Mark), a flush memory, a rewritable card-type ROM 405such as a compact flush card, a hard disk 403, and any other suitablemeans for storing a program therein.

[0104] A recording medium storing a program for accomplishing theabove-mentioned apparatus may be accomplished by programming functionsof the above-mentioned apparatuses with a programming language readableby a computer, and recording the program in a recording medium such asmentioned above.

[0105] A hard disc equipped in a server may be employed as a recordingmedium. It is also possible to accomplish the recording medium inaccordance with the present invention by storing the above-mentionedcomputer program in such a recording medium as mentioned above, andreading the computer program by other computers through a network.

[0106] As a computer 400, there may be used a personal computer, adesk-top type computer, a note-book type computer, a mobile computer, alap-top type computer, a pocket computer, a server computer, a clientcomputer, a workstation, a host computer, a commercially availablecomputer, and electronic exchanger, for instance.

[0107] While the present invention has been described in connection withcertain preferred embodiments, it is to be understood that the subjectmatter encompassed by way of the present invention is not to be limitedto those specific embodiments. On the contrary, it is intended for thesubject matter of the invention to include all alternatives,modifications and equivalents as can be included within the spirit andscope of the following claims.

[0108] The entire disclosure of japanese patent application no.2000-172176 filed on Jun. 8, 2000 including specification, claims,drawings and summary i; incorporated herein by reference in itsentirety.

What is claimed is:
 1. A decoder for decoding an encoded word X having Nbits as an encoded signal to thereby have an ex-code word Y having Mbits as a signal before encoded, including: (a) a correlation matrixcomputation part which makes computation of said encoded word X with acorrelation matrix W defined by N rows and M columns, to outputcomputation result having M columns; (b) a judgment part which judgeseach component in said computation result; and (c) an ex-code wordoutput part which outputs a result of judgment carried out said judgmentpart, as said ex-code word Y.
 2. The decoder as set forth in claim 1,wherein said correlation matrix computation part computes a product ofsaid encoded word X and said correlation matrix W.
 3. The decoder as setforth in claim 1, wherein said correlation matrix computation part iscomprised of (a1) a memory which stores said correlation matrix Wtherein, and (a2) a calculator which calculates a product of saidencoded word X and said correlation matrix W.
 4. The decoder as setforth in claim 1, wherein said judgment part transmits a signal of “1”if said component is positive or zero, and transmits a signal of “0” ifsaid component is negative.
 5. The decoder as set forth in claim 1,wherein said correlation matrix W is defined such that said component isequal to or greater than a predetermined positive threshold, if acomponent of said ex-code word Y is 1, and said component is equal to orsmaller than a predetermined negative threshold, if a component of saidex-code word Y is
 0. 6. The decoder as set forth in claim 1, whereinsaid encoded word X is comprised of symbols.
 7. The decoder as set forthin claim 1, wherein said encoded word X is comprised of Reed-Solomoncodes.
 8. An apparatus for determining a correlation matrix W used inthe decoder defined in claim 1, including: (a) a correlation matrixcalculation part which makes calculation of said encoded word X withsaid correlation matrix W to output calculation result; and (b) a devicewhich compares said calculation result to said ex-code word Y in eachcomponent, and updates said correlation matrix W, based on a result ofcomparison.
 9. The apparatus as set forth in claim 8, wherein saiddevice updates each component of said correlation matrix W such thateach component of said calculation result is equal to or greater than apredetermined positive threshold, if said ex-code word Y has a componentof 1, and each component of said calculation result is smaller than apredetermined negative threshold, if said ex-code word Y has a componentof
 0. 10. The apparatus as set forth in claim 9, wherein said deviceupdates each component of said correlation matrix W by □W smaller thansaid predetermined positive threshold.
 11. A method of decoding anencoded word X having N bits as an encoded signal to thereby have anex-code word Y having M bits as a signal before encoded, including thesteps of. (a) making computation of said encoded word X with acorrelation matrix W defined by N rows and M columns, to outputcomputation result having M columns; (b) judging each component in saidcomputation result; and (c) outputting a result of judgment carried outin said step (CL), as said ex-code word Y.
 12. The method as set forthin claim 11, wherein a product of said encoded word X and saidcorrelation matrix W is computed in said step (a).
 13. The method as setforth in claim 11, wherein a signal of “1” is transmitted, if saidcomponent is positive or zero, and a signal of “0” is transmitted, ifsaid component is negative, in said step (b).
 14. The method as setforth in claim 11, wherein said correlation matrix W used in said step(a) is defined such that said component is equal to or greater than apredetermined positive threshold, if a component of said ex-code word Yis 1, and said component is equal to or smaller than a predeterminednegative threshold, if a component of said ex-code word Y is
 0. 15. Amethod of determining a correlation matrix W used in the method definedin claim 11, including the steps of: (a) making calculation of saidencoded word X with said correlation matrix W to output calculationresult; (b) comparing said calculation result to said ex-code word Y ineach component; and (c) updating said correlation matrix W, based on aresult of comparison carried out in said step (b).
 16. The method as setforth in claim 15, wherein each component of said correlation matrix Wis updated in said step (a) such that each component of said calculationresult is equal to or greater than a predetermined positive threshold,if said ex-code word Y has a component of 1, and each component of saidcalculation result is smaller than a predetermined negative threshold,if said ex-code word Y has a component of
 0. 17. The method as set forthin claim 15, wherein each component of said correlation matrix W isupdated in said step (c) by □W smaller than said predetermined positivethreshold.
 18. A recording medium readable by a computer, storing aprogram therein for causing a computer to act as a decoder for decodingan encoded word X having N bits as an encoded signal to thereby have anex-code word Y having M bits as a signal before encoded, said decoderincluding: (a) a correlation matrix computation part which makescomputation of said encoded word X with a correlation matrix W definedby N rows and M columns, to output computation result having M columns;(b) a judgment part which judges each component in said computationresult; and (c) an ex-code word output part which outputs a result ofjudgment carried out said judgment part, as said ex-code word Y.
 19. Arecording medium readable by a computer, storing a program therein forcausing a computer to act as an apparatus for determining a correlationmatrix W used in the decoder defined in claim 1, said apparatusincluding: (a) a correlation matrix calculation part which makescalculation of said encoded word X with said correlation matrix W tooutput calculation result; and (b) a device which compares saidcalculation result to said ex-code word Y in each component, and updatessaid correlation matrix W, based on a result of comparison.
 20. Arecording medium readable by a computer, storing a program therein forcausing a computer to carry out a method of decoding an encoded word Xhaving N bits as an encoded signal to thereby have an ex-code word Yhaving M bits as a signal before encoded, said method including thesteps of: (a) making computation of said encoded word X with acorrelation matrix W defined by N rows and M columns, to outputcomputation result having M columns; (b) judging each component in saidcomputation result; and (c) outputting a result of judgment carried outin said step (b), as said ex-code word Y.
 21. A recording mediumreadable by a computer, storing a program therein for causing a computerto carry out a method of determining a correlation matrix W used in themethod defined in claim 11, said method including the steps of: (a)making calculation of said encoded word X with said correlation matrix Wto output calculation result; (b) comparing said calculation result tosaid ex-code word Y in each component; and (c) updating said correlationmatrix W, based on a result of comparison carried out in said step (b).22. A decoder for decoding an encoded word X having N bits as an encodedsignal to thereby have an ex-code word Y having M bits as a signalbefore encoded, including: (a) a correlation matrix computation partwhich makes computation of said encoded word X with a correlation matrixW defined by N rows and M columns, to output computation result having Mcolumns; (b) a judgment part which judges each component in saidcomputation result; (c) an ex-code word output part which outputs aresult of judgment carried out said judgment part, as said ex-code wordY; and (d) a device for determining said correlation matrix W, saiddevice including: (d1) a correlation matrix calculation part which makescalculation of said encoded word X with said correlation matrix W tooutput calculation result; and (d2) a device which compares saidcalculation result to said ex-code word Y in each component, and updatessaid correlation matrix W, based on a result of comparison.
 23. A methodof decoding an encoded word X having N bits as an encoded signal tothereby have an ex-code word Y having M bits as a signal before encoded,including the steps of: (a) determining a correlation matrix W; (b)making computation of said encoded word X with said correlation matrix Wdefined by N rows and M columns, to output computation result having Mcolumns; (c) judging each component in said computation result; and (d)outputting a result of judgment carried out in said step (b), as saidex-code word Y, said step (a) including the steps of: (a1) makingcalculation of said encoded word X with said correlation matrix W tooutput calculation result; (a2) comparing said calculation result tosaid ex-code word Y in each component; and (a3) updating saidcorrelation matrix W, based on a result of comparison carried out insaid step (a2).